package thread;

public class Demo12 {
    public static void main(String[] args) throws InterruptedException {
        Thread t = new Thread(()->{
            for (int i = 0; i < 3000; i++) {
                System.out.println("hello thread");
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    throw new RuntimeException(e);
                }
            }
            System.out.println("thread end");
        });
        t.start();

//        t.join();//主线程 “阻塞等待” t线程先结束，主线程后结束。

        t.join(3000);//主线程等待3000ms，如果t线程不满3000救结束了，join立即执行，
        // 如果超过3000t仍未结束，join也执行。

//        Thread.sleep(3000);//主线程和t线程谁先结束不确定，可能是t，也可能是main。

        System.out.println("main end");
    }
}
